home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / share / aclocal / intltool.m4 < prev    next >
Text File  |  2005-10-18  |  9KB  |  185 lines

  1. ## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*-
  2. ## Copyright (C) 2001 Eazel, Inc.
  3. ## Author: Maciej Stachowiak <mjs@noisehavoc.org>
  4. ##         Kenneth Christiansen <kenneth@gnu.org>
  5. ##
  6. ## This program is free software; you can redistribute it and/or modify
  7. ## it under the terms of the GNU General Public License as published by
  8. ## the Free Software Foundation; either version 2 of the License, or
  9. ## (at your option) any later version.
  10. ##
  11. ## This program is distributed in the hope that it will be useful, but
  12. ## WITHOUT ANY WARRANTY; without even the implied warranty of
  13. ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14. ## General Public License for more details.
  15. ##
  16. ## You should have received a copy of the GNU General Public License
  17. ## along with this program; if not, write to the Free Software
  18. ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  19. ##
  20. ## As a special exception to the GNU General Public License, if you
  21. ## distribute this file as part of a program that contains a
  22. ## configuration script generated by Autoconf, you may include it under
  23. ## the same distribution terms that you use for the rest of that program.
  24.  
  25. dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml])
  26. # serial 2 IT_PROG_INTLTOOL
  27. AC_DEFUN([IT_PROG_INTLTOOL],
  28. [
  29.  
  30. if test -n "$1"; then
  31.     AC_MSG_CHECKING(for intltool >= $1)
  32.  
  33.     INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ printf "%d", $[1] * 100 + $[2]; }'`
  34.     INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { printf $[2]; }'  < ${ac_aux_dir}/intltool-update.in`
  35.     changequote({{,}})
  36.     INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split(${{2}}, VERSION, "."); printf "%d\n", VERSION[1] * 100 + VERSION[2];}' < ${ac_aux_dir}/intltool-update.in`
  37.     changequote([,])
  38.  
  39.     if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT"; then
  40.     AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found])
  41.     else
  42.     AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found. Your intltool is too old.  You need intltool $1 or later.])
  43.     exit 1
  44.     fi
  45. fi
  46.  
  47.   INTLTOOL_DESKTOP_RULE='%.desktop:   %.desktop.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  48. INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  49.      INTLTOOL_KEYS_RULE='%.keys:      %.keys.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  50.      INTLTOOL_PROP_RULE='%.prop:      %.prop.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  51.       INTLTOOL_OAF_RULE='%.oaf:       %.oaf.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@'
  52.      INTLTOOL_PONG_RULE='%.pong:      %.pong.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  53.    INTLTOOL_SERVER_RULE='%.server:    %.server.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  54.     INTLTOOL_SHEET_RULE='%.sheet:     %.sheet.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  55. INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  56.        INTLTOOL_UI_RULE='%.ui:        %.ui.in        $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  57.       INTLTOOL_XML_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  58.       INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' 
  59.       INTLTOOL_XAM_RULE='%.xam:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  60.       INTLTOOL_KBD_RULE='%.kbd:       %.kbd.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  61.     INTLTOOL_CAVES_RULE='%.caves:     %.caves.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  62.   INTLTOOL_SCHEMAS_RULE='%.schemas:   %.schemas.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  63.     INTLTOOL_THEME_RULE='%.theme:     %.theme.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
  64.  
  65. AC_SUBST(INTLTOOL_DESKTOP_RULE)
  66. AC_SUBST(INTLTOOL_DIRECTORY_RULE)
  67. AC_SUBST(INTLTOOL_KEYS_RULE)
  68. AC_SUBST(INTLTOOL_PROP_RULE)
  69. AC_SUBST(INTLTOOL_OAF_RULE)
  70. AC_SUBST(INTLTOOL_PONG_RULE)
  71. AC_SUBST(INTLTOOL_SERVER_RULE)
  72. AC_SUBST(INTLTOOL_SHEET_RULE)
  73. AC_SUBST(INTLTOOL_SOUNDLIST_RULE)
  74. AC_SUBST(INTLTOOL_UI_RULE)
  75. AC_SUBST(INTLTOOL_XAM_RULE)
  76. AC_SUBST(INTLTOOL_KBD_RULE)
  77. AC_SUBST(INTLTOOL_XML_RULE)
  78. AC_SUBST(INTLTOOL_XML_NOMERGE_RULE)
  79. AC_SUBST(INTLTOOL_CAVES_RULE)
  80. AC_SUBST(INTLTOOL_SCHEMAS_RULE)
  81. AC_SUBST(INTLTOOL_THEME_RULE)
  82.  
  83. # Use the tools built into the package, not the ones that are installed.
  84.  
  85. INTLTOOL_EXTRACT='$(top_builddir)/intltool-extract'
  86. INTLTOOL_MERGE='$(top_builddir)/intltool-merge'
  87. INTLTOOL_UPDATE='$(top_builddir)/intltool-update'
  88.  
  89. AC_SUBST(INTLTOOL_EXTRACT)
  90. AC_SUBST(INTLTOOL_MERGE)
  91. AC_SUBST(INTLTOOL_UPDATE)
  92.  
  93. AC_PATH_PROG(INTLTOOL_PERL, perl)
  94. if test -z "$INTLTOOL_PERL"; then
  95.    AC_MSG_ERROR([perl not found; required for intltool])
  96. fi
  97. if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then
  98.    AC_MSG_ERROR([perl 5.x required for intltool])
  99. fi
  100. if test "x$2" != "xno-xml"; then
  101.    AC_MSG_CHECKING([for XML::Parser])
  102.    if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
  103.        AC_MSG_RESULT([ok])
  104.    else
  105.        AC_MSG_ERROR([XML::Parser perl module is required for intltool])
  106.    fi
  107. fi
  108.  
  109. AC_PATH_PROG(INTLTOOL_ICONV, iconv, iconv)
  110. AC_PATH_PROG(INTLTOOL_MSGFMT, msgfmt, msgfmt)
  111. AC_PATH_PROG(INTLTOOL_MSGMERGE, msgmerge, msgmerge)
  112. AC_PATH_PROG(INTLTOOL_XGETTEXT, xgettext, xgettext)
  113.  
  114. # Remove file type tags (using []) from po/POTFILES.
  115.  
  116. ifdef([AC_DIVERSION_ICMDS],[
  117.   AC_DIVERT_PUSH(AC_DIVERSION_ICMDS)
  118.      [mv -f po/POTFILES po/POTFILES.tmp
  119.       sed -e '/[[]encoding.*]/d' -e 's/[[].*] *//' < po/POTFILES.tmp > po/POTFILES
  120.       rm -f po/POTFILES.tmp
  121.      ]dnl
  122.   AC_DIVERT_POP()
  123. ],[
  124.   ifdef([AC_CONFIG_COMMANDS_PRE],[
  125.     AC_CONFIG_COMMANDS_PRE([
  126.        [mv -f po/POTFILES po/POTFILES.tmp
  127.         sed -e '/[[]encoding.*]/d' -e 's/[[].*] *//' < po/POTFILES.tmp > po/POTFILES
  128.         rm -f po/POTFILES.tmp
  129.        ]dnl
  130.     ])
  131.   ])
  132. ])
  133.  
  134. # Manually sed perl in so people don't have to put the intltool scripts in AC_OUTPUT.
  135.  
  136. AC_CONFIG_COMMANDS([intltool], [
  137.  
  138. intltool_edit="-e 's#@INTLTOOL_EXTRACT@#`pwd`/intltool-extract#g' \
  139.                -e 's#@INTLTOOL_ICONV@#${INTLTOOL_ICONV}#g' \
  140.                -e 's#@INTLTOOL_MSGFMT@#${INTLTOOL_MSGFMT}#g' \
  141.                -e 's#@INTLTOOL_MSGMERGE@#${INTLTOOL_MSGMERGE}#g' \
  142.                -e 's#@INTLTOOL_XGETTEXT@#${INTLTOOL_XGETTEXT}#g' \
  143.                -e 's#@INTLTOOL_PERL@#${INTLTOOL_PERL}#g'"
  144.  
  145. eval sed ${intltool_edit} < ${ac_aux_dir}/intltool-extract.in \
  146.   > intltool-extract.out
  147. if cmp -s intltool-extract intltool-extract.out 2>/dev/null; then
  148.   rm -f intltool-extract.out
  149. else
  150.   mv -f intltool-extract.out intltool-extract
  151. fi
  152. chmod ugo+x intltool-extract
  153. chmod u+w intltool-extract
  154.  
  155. eval sed ${intltool_edit} < ${ac_aux_dir}/intltool-merge.in \
  156.   > intltool-merge.out
  157. if cmp -s intltool-merge intltool-merge.out 2>/dev/null; then
  158.   rm -f intltool-merge.out
  159. else
  160.   mv -f intltool-merge.out intltool-merge
  161. fi
  162. chmod ugo+x intltool-merge
  163. chmod u+w intltool-merge
  164.  
  165. eval sed ${intltool_edit} < ${ac_aux_dir}/intltool-update.in \
  166.   > intltool-update.out
  167. if cmp -s intltool-update intltool-update.out 2>/dev/null; then
  168.   rm -f intltool-update.out
  169. else
  170.   mv -f intltool-update.out intltool-update
  171. fi
  172. chmod ugo+x intltool-update
  173. chmod u+w intltool-update
  174.  
  175. ], INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir=${ac_aux_dir}
  176. INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}' ICONV='${INTLTOOL_ICONV}'
  177. MSGFMT='${INTLTOOL_MSGFMT}' MSGMERGE='${INTLTOOL_MSGMERGE}'
  178. XGETTEXT='${INTLTOOL_XGETTEXT}')
  179.  
  180. ])
  181.  
  182. # deprecated macros
  183. AC_DEFUN([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL($@)])
  184.  
  185.